package gui;

import javax.swing.JPanel;
import javax.swing.JButton;

import java.awt.Dimension;

import javax.swing.JTextField;
import javax.swing.ImageIcon;
import javax.swing.SwingConstants;

import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Font;

@SuppressWarnings("serial")
public class PanelRespuesta extends JPanel {

	/**
	 * Declara publico los botones accesibles desde el control de eventos
	 * central.
	 */
	public JButton btnSi;
	public JButton btnNo;
	
	private JTextField txtNombre;
	private PanelImagen panelImagen;

	/** Construye el panel que recibe las respuestas. */
	public PanelRespuesta() {
		setOpaque(false);
		setPreferredSize(new Dimension(822, 520));
		setBorder(null);
		setLayout(null);

		ImageIcon imgPanel = new ImageIcon("img/paneles/panelPergamino.png");

		PanelImagen panel = new PanelImagen(imgPanel.getImage());
		panel.setBounds(340, 12, 446, 458);
		add(panel);
		panel.setLayout(null);

		JPanel panelBotones = new JPanel();
		panelBotones.setOpaque(false);
		panelBotones.setBounds(50, 358, 350, 88);
		panelBotones.setPreferredSize(new Dimension(350, 124));
		panel.add(panelBotones);
		panelBotones.setLayout(new FlowLayout(FlowLayout.CENTER, 50, 10));

		// Construccion de botones
		btnSi = new JButton("Si");
		btnSi.setPressedIcon(new ImageIcon("img/paneles/botonSIPresionado.png"));
		btnSi.setSelectedIcon(new ImageIcon("img/paneles/botonSIPresionado.png"));
		btnSi.setPreferredSize(new Dimension(69, 60));
		btnSi.setBorder(null);
		btnSi.setForeground(Color.ORANGE);
		btnSi.setContentAreaFilled(false);
		btnSi.setDefaultCapable(false);
		btnSi.setHorizontalTextPosition(SwingConstants.CENTER);
		btnSi.setOpaque(false);
		btnSi.setIcon(new ImageIcon("img/paneles/botonSI.png"));
		panelBotones.add(btnSi);

		btnNo = new JButton("No");
		btnNo.setPressedIcon(new ImageIcon("img/paneles/botonSIPresionado.png"));
		btnNo.setSelectedIcon(new ImageIcon("img/paneles/botonSIPresionado.png"));
		btnNo.setPreferredSize(new Dimension(69, 60));
		btnNo.setBorder(null);
		btnNo.setForeground(Color.ORANGE);
		btnNo.setContentAreaFilled(false);
		btnNo.setDefaultCapable(false);
		btnNo.setHorizontalTextPosition(SwingConstants.CENTER);
		btnNo.setOpaque(false);
		btnNo.setIcon(new ImageIcon("img/paneles/botonSI.png"));
		panelBotones.add(btnNo);

		txtNombre = new JTextField();
		txtNombre.setFont(new Font("Dialog", Font.BOLD, 18));
		txtNombre.setText("Se llama?");
		txtNombre.setBorder(null);
		txtNombre.setOpaque(false);
		txtNombre.setBounds(50, 23, 350, 39);
		txtNombre.setHorizontalAlignment(SwingConstants.CENTER);
		txtNombre.setEditable(false);
		panel.add(txtNombre);
		txtNombre.setColumns(10);

		panelImagen = new PanelImagen("img/elementos/sin_animal.png");
		panelImagen.setBorder(null);
		panelImagen.setPreferredSize(new Dimension(300, 300));
		panelImagen.setOpaque(false);
		panelImagen.setBounds(71, 54, 300, 300);
		panel.add(panelImagen);
	}

	// Asignar control de eventos
	public void setActionListener(ControlCentral e) {
		btnSi.addActionListener(e);
		btnNo.addActionListener(e);
	}

	public void setRespuesta(String nombre) {
		if (nombre != null)
			txtNombre.setText(nombre);
	}

	public void setImagen(String imgPath) {
		if (imgPath != null)
			panelImagen.setBackground(imgPath);
		else
			panelImagen.setBackground("img/elementos/sin_animal.png");
	}
}
